package com.wkbb.sports.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;

@Data
public class TrainReportStudentDto {
    /**
     * 编号
     */
    private Long id;

    /**
     * 训练ID
     */
    private Long trainId;

    /**
     * 项目ID
     */
    private Long projectId;

    /**
     * 学校ID
     */
    private Long orgId;

    /**
     * 年级ID
     */
    private Long gradeId;

    /**
     * 年级名称
     */
    private String gradeName;

    /**
     * 班级ID
     */
    private Long classId;

    /**
     * 班级名称
     */
    private String className;

    /**
     * 老师ID
     */
    private Long teacherId;

    /**
     * 学生ID
     */
    private Long studentId;

    /**
     * 学生名称
     */
    private String studentName;

    /**
     * 性别(1男2女)
     */
    private Byte sex;

    /**
     * 学号
     */
    private String studentNo;

    /**
     * 标准成绩
     */
    private String achievement;

    @ApiModelProperty(value = "得分")
    private Double score;

    @ApiModelProperty(value = "加分项得分")
    private Double plusScore;

    @ApiModelProperty(value = "满分值")
    private String fullScore = "100";

    @ApiModelProperty(value = "满分成绩标准值")
    private String fullValue = "0";

    @ApiModelProperty(value = "满分成绩差额")
    private String fullAchievement;

    @ApiModelProperty(value = "加分项总分数")
    private String plusesScore;

    @ApiModelProperty(value = "加分满分标准值")
    private String plusesValue = "0";

    @ApiModelProperty(value = "加分成绩差额")
    private String plusesAchievement;

    /**
     * 男生或女生排名
     */
    private int rankingInGender;
    
    /**
     * 全体排名
     */
    private int ranking;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 创建人
     */
    private String createBy;

    /**
     * 修改时间
     */
    private Date updateTime;

    /**
     * 修改人
     */
    private String updateBy;
    
    private List<TrainStudentDetailDto> details;
    
    /*
     * 失误总次数
     */
	private Integer errorCount = 0;
	
    /*
     * 失误总耗时
     */
    private Integer errorTime = 0;
    
    /*
     * 平均耗时
     */
    private Integer avgTime = 0;
    
    /*
     * 有效平均值(中位数)
     */
    private Integer medianTime = 0;
    
    /*
     * 失误 损失次数
     */
    private Integer lossesCount1 = 0;
    
    /*
     * 甩绳速度偏慢 损失次数
     */
    private Integer lossesCount2 = 0;
    
    /*
     * 进入状态过慢 损失次数
     */
    private Integer lossesCount3 = 0;
    
    /*
     * 高一档分数段
     */
    private Integer HigherScore = 0;
    
    /*
     * 高一档分数段 要求次数
     */
    private Integer HigherScoreCount = 0;
    
    /*
     * 进入状态耗时
     */
    private Integer intoStateTime = 0;
    
    /*
     * 次数提升空间
     */
    private Integer improveCount = 0;
    
    /*
     * 分数提升空间
     */
    private Double improveScore = 0.0;

    /*
     * 家长消息发送标识
     */
    private Byte familySendFlag;
}
